Weblog

Search

Select a tag, or search for text.

As you may have noticed, I've posted a new version of my web site. This new version is re-written from the ground up, using some great new tech. The photo experience has been re-imagined, but other areas of the site retain a similar though improved user experience. The entire site is now much more mobile-friendly, and more responsive as well.

As for the new tech that's driving everything, the site is now a single-page application. The client-side is wirtten entirely in React. On the server, the application is hosted from an ASP.NET Core process running in IIS, which handles server-side rendering of the React components via something called the JavaScriptViewEngine. This view engine is used instead of the standard Razor view engine, and essentially hands off the rendering of a top-level React component to Node.js. Everything is tied together by Redux, which handles all of the client-side state. It gets its initial state from the server-side render depending on which "page" was initially requested, and retrieves additional data as needed from the server's Web API.

Building the new site was a great deal of fun; combining React with ASP.NET Core proved to be an interesting challenge, but I think the combination is elegant. The server is responsible for providing data, the initial state, and the initial render to the UI, but the UI drives everything else. Developing the new site has kept me up late many nights over the last few months, but I've learned a fair amount in the process. Still, it is nice to finally get it out the door!

Posted by nick.steinbaugh at 2:06 AM
Filed under: Web Site

As promised, and in fact a bit quicker than I anticipated, I have put up a new section on the web site called Places. The page has a map all of the cities I've visited, or at least those that I can remember visiting. For the most part, this means places that I have been to and taken pictures. The page allows you to filter these places by country and region, search by text, and also view the places I have visited recently (in the last three months), which is the default.

Posted by nick.steinbaugh at 8:37 AM
Filed under: Travel, Web Site

Though it may not look like it, I just pushed a new version of my web site today, rewritten almost from the ground up. The new site now uses ASP.NET MVC 4, and now uses RavenDB instead of the MySQL database that was previously in place. The only thing that didn't change, at least not much, is the way the site looks. It uses nearly the same CSS as before. The only notable exception is, of course, the Photos page. Although the page still uses the Galleria jQuery plugin, I have updated it to the latest version, and also scrapped the server-side paging model, replacing it with a new AJAX-based "infinite scrolling" implementation that integrates into the Galleria theme. Thanks to ASP.NET MVC and JSON, this was actually easier to implement than the old server-side paging model. Additionally, I have updated the RSS implementation to use .NET's new(ish) built-in syndication functionality; due to the integration of this with MVC, the URLs for the RSS feeds have changed, so if you are subscribed, take note of the change.

In addition to these changes, I also have new features planned, so be sure to check back!

Posted by nick.steinbaugh at 5:40 PM
Filed under: Web Site, Photos